package com.deyuanyun.pic.ctrl.excelImport;

import com.deyuanyun.pic.common.validator.annotations.DataValidate;
import com.deyuanyun.pic.ctrl.annotation.*;
import com.deyuanyun.pic.ctrl.util.AutoImportInterface;
import com.deyuanyun.pic.ctrl.validatefun.AutoDevice;
import com.deyuanyun.pic.ctrl.validatefun.AutoPile;
import com.deyuanyun.pic.ctrl.validatefun.EnumValidata;
import com.deyuanyun.pic.ctrl.validatefun.PipeLineValidata;

import java.util.Date;

/**

说明:Z:\excel\阴保有效性\A3长效参比电极检测记录表（导入、导出）.xls

**/
@DbTable(name="PIC_CTRL_EXINSP_REFERENCE",startRow=4,sumCell=17,excelName="长效参比电极检测记录表.xls")
public class PicCtrlExinspReferenceExcel implements AutoImportInterface
{

      /**
      * 管道名称
      */
      @Head( name="管道名称",row=2,cell=0)
      @DbFiled( name="PIPE_LINE_ID" ,type="CHAR")
      @DataValidate(notNull = true,myFunction = PipeLineValidata.class,myFunctionMessage="管道信息与项目要求管道不一致")
      private String pipeLineId;



      /**
      * 设备编号
      */
      @DeviceAnnotation(name="referenceId")
      @Head( name="设备编号",row=2,cell=1)
      @DbFiled( name="CUSTOM_NUMBER" ,type="VARCHAR2")
      @DataValidate(notNull = true,myFunction = AutoDevice.class,myFunctionMessage = "设备不存在")
      private String customNumber;

      /**
      * 测试桩编号
      */
      @Head( name="测试桩编号",row=2,cell=2)
      @DbFiled( name="TEST_STATION_ID" ,type="CHAR")
      @DataValidate(notNull = true,myFunction = AutoPile.class,myFunctionMessage="测试桩不存在")
      private String testStationId;

      /**
      * 位置描述
      */
      @Head( name="位置描述",row=2,cell=3)
      @DbFiled( name="LACATION_DESCRIPTION" ,type="VARCHAR2")
      @DataValidate(notNull = true)
      private String lacationDescription;

      /**
      * 实测参比测量电位（mV）
      */
      @Head( name="实测参比测量电位（mV）",row=3,cell=4)
      @DbFiled( name="MEASURED_REFERENCE_POTENTIAL" ,type="NUMBER")
      @DataValidate(type=Integer.class)
      private String measuredReferencePotential;

      /**
      * 标准参比测量电位（mV）
      */
      @Head( name="标准参比测量电位（mV）",row=3,cell=5)
      @DbFiled( name="STANDARD_REFERENCE_POTENTIAL" ,type="NUMBER")
      @DataValidate(type=Integer.class)
      private String standardReferencePotential;

      /**
      * 实测开路电位（相对SCE）（mV）
      */
      @Head( name="实测开路电位（相对SCE）（mV）",row=3,cell=6)
      @DbFiled( name="MEASURED_OPEN_POTENTIAL" ,type="NUMBER")
      @DataValidate(type=Integer.class)
      private String measuredOpenPotential;

      /**
      * 标准开路电位（相对SCE）（mV）
      */
      @Head( name="标准开路电位（相对SCE）（mV）",row=3,cell=7)
      @DbFiled( name="STANDARD_OPEN_POTENTIAL" ,type="NUMBER")
      @DataValidate(type=Integer.class)
      private String standardOpenPotential;

      /**
      * 维护记录
      */
      @Head( name="维护记录",row=2,cell=8)
      @DbFiled( name="MAINTENANCE_RECORD" ,type="VARCHAR2")
      @DataValidate(lengthLimit="50",lengthLimitMessage = "长度不符合规范，最多50个字")
      private String maintenanceRecord;

      /**
      * 异常记录
      */
      @Head( name="异常记录",row=2,cell=9)
      @DbFiled( name="FAULT_RECORD" ,type="VARCHAR2")
      @DataValidate(lengthLimit="50",lengthLimitMessage = "长度不符合规范，最多50个字")
      private String faultRecord;

      /**
      * 是否有异常
      */
      @EnumVail(enumClass=com.deyuanyun.pic.ctrl.enumeration.AbnormalEnum.class,valMethod="getVal")
      @Head( name="是否有异常",row=2,cell=10)
      @DbFiled( name="ABNORMAL" ,type="VARCHAR2")
      @DataValidate(myFunctionMessage="可选值无对应值",myFunction = EnumValidata.class)
      private String abnormal;

      /**
      * 处理措施
      */
      @Head( name="处理措施",row=2,cell=11)
//      @DbFiled( name="TREATMENTMEASURES" ,type="null")
//      @DataValidate()
      @MappingTable(clas=PicCtrlExinspFault.class,autoFiled="treatmentMeasures",fkey="exinspRecodeId")
      private String treatmentmeasures;

      /**
      * 检测日期
      */
      @Head( name="检测日期",row=2,cell=12)
      @DbFiled( name="DETECTIONG_DETE" ,type="DATE")
      @DataValidate(type = Date.class,notNull = true)
      private String detectiongDete;

      /**
      * 记录人
      */
      @Head( name="记录人",row=2,cell=13)
      @DbFiled( name="RECORDER" ,type="VARCHAR2")
      @DataValidate(lengthLimit="50",lengthLimitMessage = "长度不符合规范，最多50个字")
      @AutoLoginUser
      private String recorder;

      /**
      * 记录时间
      */
      @Head( name="记录时间",row=2,cell=14)
      @DbFiled( name="RECORD_TIME" ,type="DATE")
      @DataValidate(type = Date.class)
      @AutoDate
      private String recordTime;

      /**
      * 备注
      */
      @Head( name="备注",row=2,cell=15)
      @DbFiled( name="REMARKS" ,type="VARCHAR2")
      @DataValidate(lengthLimit="50",lengthLimitMessage = "长度不符合规范，最多50个字")
      private String remarks;

      /**
      * id
      */
      @DbFiled( name="ID_")
      @AutoId
      private String id;

    @DbFiled( name="REFERENCE_ID" ,type="VARCHAR2")
    private String referenceId;

    @AutoExinspTask
    @DbFiled( name="EXINSP_TASK_ID",type="VARCHAR2")
    private String exinspTaskId;

    @DbFiled( name="DATA_STATED",type="VARCHAR2")
    private String dataStated;

    @DbFiled( name="IS_NEWEST",type="NUMBER")
    private String isNewset;

    public String getIsNewset() {
        return isNewset;
    }

    public void setIsNewset(String isNewset) {
        this.isNewset = isNewset;
    }

    public String getDataStated() {
        return dataStated;
    }

    public void setDataStated(String dataStated) {
        this.dataStated = dataStated;
    }

    public String getExinspTaskId() {
        return exinspTaskId;
    }

    public void setExinspTaskId(String exinspTaskId) {
        this.exinspTaskId = exinspTaskId;
    }


    public String getPipeLineId()
    {

        return  this.pipeLineId;
    }
    public void setPipeLineId(String pipeLineId)
    {

      this.pipeLineId=pipeLineId;
    }


    public String getCustomNumber()
    {

        return  this.customNumber;
    }
    public void setCustomNumber(String customNumber)
    {

      this.customNumber=customNumber;
    }


    public String getTestStationId()
    {

        return  this.testStationId;
    }
    public void setTestStationId(String testStationId)
    {

      this.testStationId=testStationId;
    }


    public String getLacationDescription()
    {

        return  this.lacationDescription;
    }
    public void setLacationDescription(String lacationDescription)
    {

      this.lacationDescription=lacationDescription;
    }


    public String getMeasuredReferencePotential()
    {

        return  this.measuredReferencePotential;
    }
    public void setMeasuredReferencePotential(String measuredReferencePotential)
    {

      this.measuredReferencePotential=measuredReferencePotential;
    }


    public String getStandardReferencePotential()
    {

        return  this.standardReferencePotential;
    }
    public void setStandardReferencePotential(String standardReferencePotential)
    {

      this.standardReferencePotential=standardReferencePotential;
    }


    public String getMeasuredOpenPotential()
    {

        return  this.measuredOpenPotential;
    }
    public void setMeasuredOpenPotential(String measuredOpenPotential)
    {

      this.measuredOpenPotential=measuredOpenPotential;
    }


    public String getStandardOpenPotential()
    {

        return  this.standardOpenPotential;
    }
    public void setStandardOpenPotential(String standardOpenPotential)
    {

      this.standardOpenPotential=standardOpenPotential;
    }


    public String getMaintenanceRecord()
    {

        return  this.maintenanceRecord;
    }
    public void setMaintenanceRecord(String maintenanceRecord)
    {

      this.maintenanceRecord=maintenanceRecord;
    }


    public String getFaultRecord()
    {

        return  this.faultRecord;
    }
    public void setFaultRecord(String faultRecord)
    {

      this.faultRecord=faultRecord;
    }


    public String getAbnormal()
    {

        return  this.abnormal;
    }
    public void setAbnormal(String abnormal)
    {

      this.abnormal=abnormal;
    }


    public String getTreatmentmeasures()
    {

        return  this.treatmentmeasures;
    }
    public void setTreatmentmeasures(String treatmentmeasures)
    {

      this.treatmentmeasures=treatmentmeasures;
    }


    public String getDetectiongDete()
    {

        return  this.detectiongDete;
    }
    public void setDetectiongDete(String detectiongDete)
    {

      this.detectiongDete=detectiongDete;
    }


    public String getRecorder()
    {

        return  this.recorder;
    }
    public void setRecorder(String recorder)
    {

      this.recorder=recorder;
    }


    public String getRecordTime()
    {

        return  this.recordTime;
    }
    public void setRecordTime(String recordTime)
    {

      this.recordTime=recordTime;
    }


    public String getRemarks()
    {

        return  this.remarks;
    }
    public void setRemarks(String remarks)
    {

      this.remarks=remarks;
    }


    public String getId()
    {

        return  this.id;
    }
    public void setId(String id)
    {

      this.id=id;
    }


    public String getReferenceId() {
        return referenceId;
    }

    public void setReferenceId(String referenceId) {
        this.referenceId = referenceId;
    }
}